﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace U9API.JsonModel
{
    public class SitesItem
    {
        /// <summary>
        /// 
        /// </summary>
        public Int64 ID { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string Code { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string Name { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string Territory { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string DefaultContact { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string OfficeSite { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string RegisterAddress { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string Effective_EffectiveDate { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string Effective_DisableDate { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public bool isPriceListModify { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public bool isShippmentRuleEditable { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public bool isPaymentTermEditable { get; set; }

        public bool isBillTo { get; set; } 
        public bool isClaim { get; set; }
        public bool isContrast { get; set; }
        public bool isShipTo { get; set; }
        public bool isPayment { get; set; }
        public bool isDefaultBillTo { get; set; }
        public bool isDefaultClaim { get; set; }
        public bool isDefaultContrast { get; set; }
        public bool isDefaultShipTo { get; set; }
        public bool isDefaultPayment { get; set; }
    }

    public class ApiCustomer : BaseEntity
    {
        /// <summary>
        /// 
        /// </summary>
        public string Code { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string Name { get; set; }
        public string ShortName { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public Int64 ID { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string OrgCode { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public Int64 SalePriceList { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<SitesItem> Sites { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public int TradeCategory { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public int SaleType { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string Territory { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string DescFlexField_PrivateDescSeg1_ID { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public bool isTaxPrice { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string TaxSchedule { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string ShippmentRule { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public bool isShipmentModify { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string ReturnTerm { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public int InvoiceVerificationOrder { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public int VerificationMode { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string RecervalTerm { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public bool sRecTermModify { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string ARConfirmTerm { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public bool isARCfmModify { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public bool isCreditCheck { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public bool isRecTermModify { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public bool isPriceListModify { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string Saleser { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string Department { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public int State { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string SupplyOrg { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public int DemandTransType { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public int SupplySource { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string Effective_EffectiveDate { get; set; }

        public string CustomerCategory { get; set; }

        public string StateTaxNo { get; set; }

        public string DistrictTaxNo { get; set; }

        public string CorpUnifyCode { get; set; }
    }

}
